﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using MySql.Data.MySqlClient;
using System.Data;

namespace MaterialezMuñoz.clases
{
    public class MBDSQL
    {
        public MySqlConnection conexion;
        MySqlCommand comando;
        MySqlDataReader lector;
        string error;
        // Metodo publico que retorna la respuesta del lector.
        public MySqlDataReader Respuesta
        {
            get { return this.lector; }
        }
        // Metodo que retorna un error en caso de existir.
        public string Error
        {
            get { return this.error; }
        }
        // Metodo donde se le da el valor a la coneccion.
        public MBDSQL()
        {
            conexion = new MySqlConnection();
            conexion.ConnectionString = "Server=localhost;UId=root;Password=123;database=sistemamat";
        }
        // Metodo para abrir conexion.
        public bool AbrirConexoin()
        {
            try
            {
                if (conexion.State == ConnectionState.Closed)
                {
                    conexion.Open();
                }
                return true;
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return false;
            }
        }
        // Metodo para cerrar conexion.
        public bool CerrarConexion()
        {
            try
            {
                if (conexion.State == ConnectionState.Open)
                {
                    conexion.Close();
                }
                return true;
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return false;
            }
        }
        // Metodo para ejecutar el comando sql ya sea insert delete o update.
        public bool EjecutarQuery(string query)
        {
            try
            {
                comando = new MySqlCommand();
                comando.CommandText = query;
                comando.Connection = conexion;

                lector = comando.ExecuteReader();
                return true;
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return false;
            }
        }
    }
}